﻿#pragma once 

#include <memory>

#include "../../base/ipc_server_base.h"



class WubiSchemeMgr;
class UIMsgHandler;
class WubiUIServer : public IpcServerBase {
public:
    WubiUIServer(std::shared_ptr<WubiSchemeMgr> &wubi_scheme_mgr);
    ~WubiUIServer();

    bool start();

    void onClientConnected(HANDLE hPipe); // 处理客户端连接事件
private:
    std::shared_ptr<WubiSchemeMgr> _wubi_scheme_mgr; // 输入方案管理器，用于管理候选词和输入处理逻辑
    std::shared_ptr<UIMsgHandler> _uiMsgHandler;
    bool _has_client; // 是否有客户端连接
};